package metier;

import java.rmi.*;
import java.sql.SQLException;
import java.util.ArrayList;

import donnees.*;

public interface IMetier extends Remote {

	//creer compte
	public void creerCompte(String nom, String prenom, String mail,
			String motdepasse, String num, String rue, String cP, String ville) throws RemoteException;
	
	//panier
	public Panier ajouterAuPanier(Panier lePanier,int idProd) throws RemoteException;
	public Panier retirerDuPanier(Panier lePanier, int idProd) throws RemoteException;
	public Panier supprimerDuPanier(Panier lePanier, int idProd) throws RemoteException;
	
	//liste produits
	public ArrayList<Produit> getProduitsDeLaCategorieTrieParPrix(int idCateg) throws RemoteException;
	public ArrayList<Produit> getProduitsDeLaCategorieTrieParDispo(int idCateg) throws RemoteException;
	
	//enregistrer commande
	public void enregistrerCommande(Client c, Panier p) throws RemoteException;
	
	//utils
	public ArrayList<Categorie> getCategories() throws RemoteException;
	public String getNomDeLaCategorie(int idCateg) throws RemoteException;
	public ArrayList<Produit> getProduitsDeLaCategorie(int idCateg) throws RemoteException;
	public boolean mailIsInBDD(String mail) throws RemoteException;
	public Client rechercherClientParMail(String mail) throws SQLException, RemoteException;

	//adresses
	public Adresse getAdresseDuClient(int idClient) throws RemoteException;
	public Adresse modifierAdresseDuClient(int idClient,String num, String rue, String CP, String ville) throws RemoteException;

	public ArrayList<Commande> getCommandesDuClient(int id) throws RemoteException;

}
